

void TestBuffer()
{
    //-----------------------普通接口测试-----------------------------------
    // Buffer buf;
    // std::string str = "hello world";
    // buf.WriteString(str);

    // std::string str2 = "nihaoa\n zuijinzenmyang";
    // buf.WriteString(str2);

    // // std::string tmp = buf.GetLine();
    // // std::cout << tmp << std::endl;

    // Buffer buf2;
    // buf2.WirteBuffer(buf);
    // std::string tmp2 = buf2.ReadString(buf.ReadAbleSize());
    // std::cout << tmp2 << std::endl;

    //-----------------------长数据的测试-----------------------------------
    // Buffer buf;

    // for(int i = 0; i < 300; i++)
    // {
    //     std::string str = "hello" + std::to_string(i) + '\n';
    //     buf.WriteString(str);
    // }
    // std::string tmp3 = buf.ReadString(buf.ReadAbleSize());
    // std::cout << tmp3 << std::endl;
}

void TestServer()
{
    // Sock listen_sockfd;
    // //创建服务端监听套接字socket、bind、listen、非阻塞
    // listen_sockfd.CreateServer(8082, 0);
    // while(1)
    // {
    //     //获取新连接
    //     int newsockfd = listen_sockfd.Accept();
    //     if(newsockfd < 0)
    //         continue;

    //     Sock client_sockfd(newsockfd);
    //     char buf[1024];
    //     //接收数据
    //     int ret = client_sockfd.NonBlockRecv(buf, 1023);
    //     if(ret < 0)
    //     {
    //         client_sockfd.Close();
    //         continue;
    //     }
    //     std::cout << ret << ":" << buf << std::endl;

    //     //发送数据
    //     client_sockfd.NonBlockSend(buf, 1023);
    //     client_sockfd.Close();
    // }
    // listen_sockfd.Close();
}

// void Handler(Channel* channel)
// {

// }

// void AcceptFunc(Epoller* epoller, Channel* listen_channel)
// {
//     int fd = listen_channel->Fd();
//     int newfd = accept(fd, nullptr, nullptr);
//     if(newfd < 0)
//     {
//         return;
//     }
//     Channel* channel = new Channel(newfd, epoller);
//     channel->SetReadCallBack(std::bind(Handler, channel));

#include "EventLoop.hpp"
#include "Connection.hpp"

int main()
{
    
    return 0;
}